var editModuleWin;

// Ext.form.Field.prototype.msgTarget='side';

/*
 * qtip-当鼠标移动到控件上面时显示提示 title-在浏览器的标题显示，但是测试结果是和qtip一样的 under-在控件的底下显示错误提示
 * side-在控件右边显示一个错误图标，鼠标指向图标时显示错误提示. 默认值. id-[element id]错误提示显示在指定id的HTML元件中
 */

/**
 * 编辑模块信息
 * 
 * @param {}
 *            id 模块ID
 */
function editmodule(id) {
	if (editModuleWin) {
		editModuleWin = null;
	}

	var moduleUpdateForm = initmoduleUpdateForm();

	editModuleWin = new Ext.Window({
				renderTo : Ext.getBody(),
				layout : 'fit',
				width : 400,
				height : 300,
				title : '模块信息编辑',
				resizable : false,
				plain : true,
				modal : true,

				items : [moduleUpdateForm],

				buttons : [{
							id : 'moduleUpdateButton',
							text : '提 交',
							handler : handleUpdatemodule
						}, {
							text : '关 闭',
							handler : function() {
								editModuleWin.close();
								editModuleWin = null;
							}
						}]
			});

	moduleUpdateForm.getForm().load({
				url : context + '/system/module.do?method=edit',
				params : {
					id : id
				},
				success : function(form, action) {

				},
				failure : function(form, action) {
					Ext.Msg.alert('初始化模块信息失败');
				}
			});

	editModuleWin.show(this);
}

function initmoduleUpdateForm() {

	var moduleUpdateForm = new Ext.FormPanel({
				id : 'moduleUpdateForm',
				labelWidth : 75, // label settings here cascade unless
				// overridden
				frame : false,
				bodyStyle : 'padding:5px 5px 0',
				width : 350,
				defaults : {
					width : 230
				},
				defaultType : 'textfield',
				items : [{
							fieldLabel : '模块主键ID',
							xtype : 'hidden',
							id : 'mid',
							name : 'mid'
						}, {
							fieldLabel : '模块名称',
							name : 'mname',
							emptyText : '请定义模块名称',
							allowBlank : false
						}, {
							fieldLabel : '模块说明',
							xtype : 'textarea',
							id : 'mmemo',
							name : 'mmemo'
						}, {
							fieldLabel : '自定义链接',
							xtype : 'textarea',
							name : 'murl',
							value : ''
						}, {
							fieldLabel : '排列顺序',
							name : 'msort',
							value : ''
						}]
			});

	return moduleUpdateForm;
}

function handleUpdatemodule() {
	if (Ext.getCmp("moduleUpdateForm").getForm().isValid()) {

		Ext.MessageBox.wait('提交更新过程中...');

		Ext.getCmp("moduleUpdateForm").getForm().submit({
					url : context + '/system/module.do?method=update',
					method : "POST",
					success : function(form, action) {
						Ext.MessageBox.hide();
						Ext.Msg.alert('提示', '提交更新模块信息成功！');
						editModuleWin.close();
						editModuleWin = null;

						reloadmoduleListStore();
					},
					failure : function(form, action) {
						Ext.MessageBox.hide();
						Ext.getCmp("moduleUpdateButton").setDisabled(false);
						if (action.result.errCode == '-1') {
							Ext.Msg.alert('提示', '提交保存模块信息发生错误！');
						} else {
							Ext.Msg.alert('提示', '未知的错误异常！');
						}
					}
				});
	}
}